package lib.bone.system.service;

import lib.bone.common.core.domain.ResponseDTO;
import lib.bone.common.service.BaseService;
import lib.bone.system.domain.dto.menu.MenuAddDTO;
import lib.bone.system.domain.dto.menu.MenuUpdateDTO;
import lib.bone.system.domain.entity.SysMenu;
import lib.bone.system.domain.vo.RouterVO;
import org.springframework.data.domain.Example;
import org.springframework.data.domain.Pageable;

import java.util.List;

public interface SysMenuService extends BaseService<SysMenu,Long> {
    /** 根据ID列表获取菜单 **/
    List<SysMenu> getMenuByIdList(List<Long> menuIdList);
    /** 构建菜单选择树 **/
    List<SysMenu> buildMenuTree(List<SysMenu> menus);
    /** 构建菜单路由 **/
    List<RouterVO> buildMenus(List<SysMenu> menus);
    /** 构建菜单路由 只返回存在路由 **/
    List<RouterVO> buildMenus(List<SysMenu> menus,List<Long> menuIds);
    /** 根据父查询 **/
    List<SysMenu> findByParent(SysMenu parent);
}
